package com.yugao.fintech.antelope.shortlink.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yugao.fintech.antelope.shortlink.model.entity.ShortLink;
import com.yugao.fintech.antelope.shortlink.model.rqrs.*;

/**
 * 短链
 */
public interface ShortLinkService extends IService<ShortLink> {
    /**
     * 分页查询 短链
     *
     * @return 返回分页数据
     */
    IPage<ShortLinkResp> pageLink(ShortLinkPageReq req);

    /**
     * 根据主键查询 商家短链
     *
     * @param id 主键
     * @return 返回记录，没有返回null
     */
    ShortLink getLinkById(Long id, Long groupId);

    ShortLink getLinkByCode(String code);

    boolean updateLink(ShortLinkUpdateReq req);

    /**
     * 保存 短链
     *
     * @param req 新增的记录
     * @return 是否保存成功
     */
    boolean saveLink(ShortLinkSaveReq req);

    /**
     * 通过id删除 商家短链
     *
     * @return 是否删除成功
     */
    boolean deleteLinkByIds(ShortLinkDeleteReq req);
}
